package com.b2mining.integration.beans;

import java.util.*;

/**
 * Clase que contiene los campos referentes a la tabla GuiaDespacho usada para
 * el manejo de Guias de Despacho en la Base de Datos intermedia.
 * 
 * @since (7/4/2003 1:12:20 PM)
 * @author Synopsis S.A. <BR>
 *         Analista Programador: Miguel Lora G.
 */
public class GuideOfOffice implements ItemContainer, XMLBean {
	
	private int idGuia;

	private java.lang.String codigoUsuario;

	private java.lang.String rucProveedor;

	private boolean flagRucProveedor;

	private java.lang.String numeroGuia;

	private boolean flagNumeroGuia;

	private java.lang.String numeroOC;

	private boolean flagNumeroOC;

	private java.util.Date fechaEmision;

	private boolean flagFechaEmision;

	private java.lang.String rucCliente;

	private boolean flagRucCliente;

	private String codigoAlmacen;

	private java.lang.String motivoGuia;

	private boolean flagMotivoGuia;

	private java.lang.String puntoPartida;

	private java.lang.String puntoLlegada;

	private java.lang.String tipDocTransportista;

	private java.lang.String numDocTransportista;

	private java.lang.String razonSocialTransportista;

	private java.lang.String dirTransportista;

	private java.lang.String tipoTransporte;

	private java.lang.String placaoNave;

	private java.lang.String registroMtc;

	private java.util.Date fechaInicioTraslado;

	private java.util.Date fechaProbArribo;

	private Integer totalBultos;

	private Double totalPesoNeto;

	private Double totalPesoBruto;

	private Double tara;

	private Double totalVolumen;

	private String codUnidadPeso;

	private String codUnidadVolumen;

	private java.lang.String observaciones;

	private java.lang.String status;

	private Vector guideOfOfficeInvitemList=new Vector();

	private Vector checkPointList = new Vector();

	private java.lang.String notaIngreso;

	private java.lang.String nombreContacto;

	private java.lang.String mailContacto;

	private java.lang.String observacionesCambioEstado;

	private java.lang.String estadoGuia;

	private java.util.Date fechaCambioEstado;

	private java.util.Date fechaDevolucion;

	private String EjercicioGuia;

	private String ClaseDocumentoGuia;

	private String ClaseOperacionGuia;

	private String FechaContabilizacionGuia;

	private String Sociedad;

	private String CodigoERPProveedor;

	private String RazonSocialProveedor;

	private String TipoGuia;

	private String UsuarioCreacionGuia;

	private String CodigoGuiaERP;
	
	/**** AGREGAGO MIJAIL 09.10.2009 ****/
	private String RUCGrupoEmpresarial;
	/************************************/
	

	/**
	 * Returns the codigoAlmacen.
	 * 
	 * @return double
	 */

	/**
	 * Returns the dirTransportista.
	 * 
	 * @return java.lang.String
	 */
	public java.lang.String getDirTransportista() {
		return dirTransportista;
	}

	/**
	 * Returns the fechaEmision.
	 * 
	 * @return java.util.Date
	 */
	public java.util.Date getFechaEmision() {
		return fechaEmision;
	}

	/**
	 * Returns the fechaInicioTraslado.
	 * 
	 * @return java.util.Date
	 */
	public java.util.Date getFechaInicioTraslado() {
		return fechaInicioTraslado;
	}

	/**
	 * Returns the fechaProbArribo.
	 * 
	 * @return java.util.Date
	 */
	public java.util.Date getFechaProbArribo() {
		return fechaProbArribo;
	}

	/**
	 * Returns the motivoGuia.
	 * 
	 * @return java.lang.String
	 */
	public java.lang.String getMotivoGuia() {
		return motivoGuia;
	}

	/**
	 * Returns the numDocTransportista.
	 * 
	 * @return java.lang.String
	 */
	public java.lang.String getNumDocTransportista() {
		return numDocTransportista;
	}

	/**
	 * Returns the numeroGuia.
	 * 
	 * @return java.lang.String
	 */
	public java.lang.String getNumeroGuia() {
		return numeroGuia;
	}

	/**
	 * Returns the numeroOC.
	 * 
	 * @return java.lang.String
	 */
	public java.lang.String getNumeroOC() {
		return numeroOC;
	}

	/**
	 * Returns the observaciones.
	 * 
	 * @return java.lang.String
	 */
	public java.lang.String getObservaciones() {
		return observaciones;
	}

	/**
	 * Returns the placaoNave.
	 * 
	 * @return java.lang.String
	 */
	public java.lang.String getPlacaoNave() {
		return placaoNave;
	}

	/**
	 * Returns the puntoLlegada.
	 * 
	 * @return java.lang.String
	 */
	public java.lang.String getPuntoLlegada() {
		return puntoLlegada;
	}

	/**
	 * Returns the puntoPartida.
	 * 
	 * @return java.lang.String
	 */
	public java.lang.String getPuntoPartida() {
		return puntoPartida;
	}

	/**
	 * Returns the razonSocialTransportista.
	 * 
	 * @return java.lang.String
	 */
	public java.lang.String getRazonSocialTransportista() {
		return razonSocialTransportista;
	}

	/**
	 * Returns the registroMtc.
	 * 
	 * @return java.lang.String
	 */
	public java.lang.String getRegistroMtc() {
		return registroMtc;
	}

	/**
	 * Returns the rucCliente.
	 * 
	 * @return java.lang.String
	 */
	public java.lang.String getRucCliente() {
		return rucCliente;
	}

	/**
	 * Returns the rucProveedor.
	 * 
	 * @return java.lang.String
	 */
	public java.lang.String getRucProveedor() {
		return rucProveedor;
	}

	/**
	 * Returns the tara.
	 * 
	 * @return double
	 */

	/**
	 * Returns the tipDocTransportista.
	 * 
	 * @return java.lang.String
	 */
	public java.lang.String getTipDocTransportista() {
		return tipDocTransportista;
	}

	/**
	 * Returns the tipoTransporte.
	 * 
	 * @return java.lang.String
	 */
	public java.lang.String getTipoTransporte() {
		return tipoTransporte;
	}

	/**
	 * Sets the dirTransportista.
	 * 
	 * @param dirTransportista
	 *            The dirTransportista to set
	 */
	public void setDirTransportista(java.lang.String dirTransportista) {
		this.dirTransportista = dirTransportista;
	}

	/**
	 * Sets the fechaEmision.
	 * 
	 * @param fechaEmision
	 *            The fechaEmision to set
	 */
	public void setFechaEmision(java.util.Date fechaEmision) {
		this.fechaEmision = fechaEmision;
	}

	/**
	 * Sets the fechaInicioTraslado.
	 * 
	 * @param fechaInicioTraslado
	 *            The fechaInicioTraslado to set
	 */
	public void setFechaInicioTraslado(java.util.Date fechaInicioTraslado) {
		this.fechaInicioTraslado = fechaInicioTraslado;
	}

	/**
	 * Sets the fechaProbArribo.
	 * 
	 * @param fechaProbArribo
	 *            The fechaProbArribo to set
	 */
	public void setFechaProbArribo(java.util.Date fechaProbArribo) {
		this.fechaProbArribo = fechaProbArribo;
	}

	/**
	 * Sets the motivoGuia.
	 * 
	 * @param motivoGuia
	 *            The motivoGuia to set
	 */
	public void setMotivoGuia(java.lang.String motivoGuia) {
		this.motivoGuia = motivoGuia;
	}

	/**
	 * Sets the numDocTransportista.
	 * 
	 * @param numDocTransportista
	 *            The numDocTransportista to set
	 */
	public void setNumDocTransportista(java.lang.String numDocTransportista) {
		this.numDocTransportista = numDocTransportista;
	}

	/**
	 * Sets the numeroGuia.
	 * 
	 * @param numeroGuia
	 *            The numeroGuia to set
	 */
	public void setNumeroGuia(java.lang.String numeroGuia) {
		this.numeroGuia = numeroGuia;
	}

	/**
	 * Sets the numeroOC.
	 * 
	 * @param numeroOC
	 *            The numeroOC to set
	 */
	public void setNumeroOC(java.lang.String numeroOC) {
		this.numeroOC = numeroOC;
	}

	/**
	 * Sets the observaciones.
	 * 
	 * @param observaciones
	 *            The observaciones to set
	 */
	public void setObservaciones(java.lang.String observaciones) {
		this.observaciones = observaciones;
	}

	/**
	 * Sets the placaoNave.
	 * 
	 * @param placaoNave
	 *            The placaoNave to set
	 */
	public void setPlacaoNave(java.lang.String placaoNave) {
		this.placaoNave = placaoNave;
	}

	/**
	 * Sets the puntoLlegada.
	 * 
	 * @param puntoLlegada
	 *            The puntoLlegada to set
	 */
	public void setPuntoLlegada(java.lang.String puntoLlegada) {
		this.puntoLlegada = puntoLlegada;
	}

	/**
	 * Sets the puntoPartida.
	 * 
	 * @param puntoPartida
	 *            The puntoPartida to set
	 */
	public void setPuntoPartida(java.lang.String puntoPartida) {
		this.puntoPartida = puntoPartida;
	}

	/**
	 * Sets the razonSocialTransportista.
	 * 
	 * @param razonSocialTransportista
	 *            The razonSocialTransportista to set
	 */
	public void setRazonSocialTransportista(
			java.lang.String razonSocialTransportista) {
		this.razonSocialTransportista = razonSocialTransportista;
	}

	/**
	 * Sets the registroMtc.
	 * 
	 * @param registroMtc
	 *            The registroMtc to set
	 */
	public void setRegistroMtc(java.lang.String registroMtc) {
		this.registroMtc = registroMtc;
	}

	/**
	 * Sets the rucCliente.
	 * 
	 * @param rucCliente
	 *            The rucCliente to set
	 */
	public void setRucCliente(java.lang.String rucCliente) {
		this.rucCliente = rucCliente;
	}

	/**
	 * Sets the rucProveedor.
	 * 
	 * @param rucProveedor
	 *            The rucProveedor to set
	 */
	public void setRucProveedor(java.lang.String rucProveedor) {
		this.rucProveedor = rucProveedor;
	}

	/**
	 * Sets the tipDocTransportista.
	 * 
	 * @param tipDocTransportista
	 *            The tipDocTransportista to set
	 */
	public void setTipDocTransportista(java.lang.String tipDocTransportista) {
		this.tipDocTransportista = tipDocTransportista;
	}

	/**
	 * Sets the tipoTransporte.
	 * 
	 * @param tipoTransporte
	 *            The tipoTransporte to set
	 */
	public void setTipoTransporte(java.lang.String tipoTransporte) {
		this.tipoTransporte = tipoTransporte;
	}

	/**
	 * @see integration_beans.ItemContainer#addItem(Item)
	 */
	public void addItem(Item item) {
		guideOfOfficeInvitemList.add(item);
	}

	/**
	 * @see integration_beans.ItemContainer#getItem(int)
	 */
	public Item getItem(int item) {
		return (GuideOfOfficeItem) guideOfOfficeInvitemList.get(item);
	}

	/**
	 * @see integration_beans.ItemContainer#getItemCount()
	 */
	public int getItemCount() {
		return guideOfOfficeInvitemList.size();
	}

	/**
	 * @see integration_beans.ItemContainer#removeItem(int)
	 */
	public void removeItem(int item) {
		if (!guideOfOfficeInvitemList.isEmpty()) {
			guideOfOfficeInvitemList.remove(item);
		}
	}

	/* para los checkpoints: */

	public void addCheckPoint(CheckPoint ch) {
		checkPointList.add(ch);
	}

	public CheckPoint getCheckPoint(int item) {
		return (CheckPoint) checkPointList.get(item);
	}

	public int getCheckPointCount() {
		return checkPointList.size();
	}

	public void removeCheckPoint(int item) {
		if (!checkPointList.isEmpty()) {
			checkPointList.remove(item);
		}
	}

	/**
	 * Returns the checkPointList.
	 * 
	 * @return Vector
	 */
	public Vector getCheckPointList() {
		return checkPointList;
	}

	/**
	 * Returns the codigoAlmacen.
	 * 
	 * @return String
	 */
	public String getCodigoAlmacen() {
		return codigoAlmacen;
	}

	/**
	 * Returns the codUnidadPeso.
	 * 
	 * @return String
	 */
	public String getCodUnidadPeso() {
		return codUnidadPeso;
	}

	/**
	 * Returns the codUnidadVolumen.
	 * 
	 * @return String
	 */
	public String getCodUnidadVolumen() {
		return codUnidadVolumen;
	}

	/**
	 * Returns the guideOfOfficeInvitemList.
	 * 
	 * @return Vector
	 */
	public Vector getGuideOfOfficeInvitemList() {
		return guideOfOfficeInvitemList;
	}

	/**
	 * Returns the tara.
	 * 
	 * @return Double
	 */
	public Double getTara() {
		return tara;
	}

	/**
	 * Returns the totalBultos.
	 * 
	 * @return Integer
	 */
	public Integer getTotalBultos() {
		return totalBultos;
	}

	/**
	 * Returns the totalPesoBruto.
	 * 
	 * @return Double
	 */
	public Double getTotalPesoBruto() {
		return totalPesoBruto;
	}

	/**
	 * Returns the totalPesoNeto.
	 * 
	 * @return Double
	 */
	public Double getTotalPesoNeto() {
		return totalPesoNeto;
	}

	/**
	 * Returns the totalVolumen.
	 * 
	 * @return Double
	 */
	public Double getTotalVolumen() {
		return totalVolumen;
	}

	/**
	 * Sets the checkPointList.
	 * 
	 * @param checkPointList
	 *            The checkPointList to set
	 */
	public void setCheckPointList(Vector checkPointList) {
		this.checkPointList = checkPointList;
	}

	/**
	 * Sets the codigoAlmacen.
	 * 
	 * @param codigoAlmacen
	 *            The codigoAlmacen to set
	 */
	public void setCodigoAlmacen(String codigoAlmacen) {
		this.codigoAlmacen = codigoAlmacen;
	}

	/**
	 * Sets the guideOfOfficeInvitemList.
	 * 
	 * @param guideOfOfficeInvitemList
	 *            The guideOfOfficeInvitemList to set
	 */
	public void setGuideOfOfficeInvitemList(Vector guideOfOfficeInvitemList) {
		this.guideOfOfficeInvitemList = guideOfOfficeInvitemList;
	}

	/**
	 * Sets the tara.
	 * 
	 * @param tara
	 *            The tara to set
	 */
	public void setTara(double tara) {
		this.tara = new Double(tara);
	}

	/**
	 * Sets the totalBultos.
	 * 
	 * @param totalBultos
	 *            The totalBultos to set
	 */
	public void setTotalBultos(int totalBultos) {
		this.totalBultos = new Integer(totalBultos);
	}

	/**
	 * Sets the totalPesoBruto.
	 * 
	 * @param totalPesoBruto
	 *            The totalPesoBruto to set
	 */
	public void setTotalPesoBruto(double totalPesoBruto) {
		this.totalPesoBruto = new Double(totalPesoBruto);
	}

	/**
	 * Sets the totalPesoNeto.
	 * 
	 * @param totalPesoNeto
	 *            The totalPesoNeto to set
	 */
	public void setTotalPesoNeto(double totalPesoNeto) {
		this.totalPesoNeto = new Double(totalPesoNeto);
	}

	/**
	 * Sets the totalVolumen.
	 * 
	 * @param totalVolumen
	 *            The totalVolumen to set
	 */
	public void setTotalVolumen(double totalVolumen) {
		this.totalVolumen = new Double(totalVolumen);
	}

	/**
	 * Returns the status.
	 * 
	 * @return java.lang.String
	 */
	public java.lang.String getStatus() {
		return status;
	}

	/**
	 * Sets the status.
	 * 
	 * @param status
	 *            The status to set
	 */
	public void setStatus(java.lang.String status) {
		this.status = status;
	}

	/**
	 * Returns the codigoUsuario.
	 * 
	 * @return java.lang.String
	 */
	public java.lang.String getCodigoUsuario() {
		return codigoUsuario;
	}

	/**
	 * Sets the codigoUsuario.
	 * 
	 * @param codigoUsuario
	 *            The codigoUsuario to set
	 */
	public void setCodigoUsuario(java.lang.String codigoUsuario) {
		this.codigoUsuario = codigoUsuario;
	}

	/**
	 * Sets the codUnidadPeso.
	 * 
	 * @param codUnidadPeso
	 *            The codUnidadPeso to set
	 */
	public void setCodUnidadPeso(String codUnidadPeso) {
		this.codUnidadPeso = codUnidadPeso;
	}

	/**
	 * Sets the codUnidadVolumen.
	 * 
	 * @param codUnidadVolumen
	 *            The codUnidadVolumen to set
	 */
	public void setCodUnidadVolumen(String codUnidadVolumen) {
		this.codUnidadVolumen = codUnidadVolumen;
	}

	/**
	 * Returns the flagFechaEmision.
	 * 
	 * @return boolean
	 */
	public boolean isFlagFechaEmision() {
		return flagFechaEmision;
	}

	/**
	 * Returns the flagMotivoGuia.
	 * 
	 * @return boolean
	 */
	public boolean isFlagMotivoGuia() {
		return flagMotivoGuia;
	}

	/**
	 * Returns the flagNumeroGuia.
	 * 
	 * @return boolean
	 */
	public boolean isFlagNumeroGuia() {
		return flagNumeroGuia;
	}

	/**
	 * Returns the flagNumeroOC.
	 * 
	 * @return boolean
	 */
	public boolean isFlagNumeroOC() {
		return flagNumeroOC;
	}

	/**
	 * Returns the flagRucCliente.
	 * 
	 * @return boolean
	 */
	public boolean isFlagRucCliente() {
		return flagRucCliente;
	}

	/**
	 * Returns the flagRucProveedor.
	 * 
	 * @return boolean
	 */
	public boolean isFlagRucProveedor() {
		return flagRucProveedor;
	}

	/**
	 * Sets the flagFechaEmision.
	 * 
	 * @param flagFechaEmision
	 *            The flagFechaEmision to set
	 */
	public void setFlagFechaEmision(boolean flagFechaEmision) {
		this.flagFechaEmision = flagFechaEmision;
	}

	/**
	 * Sets the flagMotivoGuia.
	 * 
	 * @param flagMotivoGuia
	 *            The flagMotivoGuia to set
	 */
	public void setFlagMotivoGuia(boolean flagMotivoGuia) {
		this.flagMotivoGuia = flagMotivoGuia;
	}

	/**
	 * Sets the flagNumeroGuia.
	 * 
	 * @param flagNumeroGuia
	 *            The flagNumeroGuia to set
	 */
	public void setFlagNumeroGuia(boolean flagNumeroGuia) {
		this.flagNumeroGuia = flagNumeroGuia;
	}

	/**
	 * Sets the flagNumeroOC.
	 * 
	 * @param flagNumeroOC
	 *            The flagNumeroOC to set
	 */
	public void setFlagNumeroOC(boolean flagNumeroOC) {
		this.flagNumeroOC = flagNumeroOC;
	}

	/**
	 * Sets the flagRucCliente.
	 * 
	 * @param flagRucCliente
	 *            The flagRucCliente to set
	 */
	public void setFlagRucCliente(boolean flagRucCliente) {
		this.flagRucCliente = flagRucCliente;
	}

	/**
	 * Sets the flagRucProveedor.
	 * 
	 * @param flagRucProveedor
	 *            The flagRucProveedor to set
	 */
	public void setFlagRucProveedor(boolean flagRucProveedor) {
		this.flagRucProveedor = flagRucProveedor;
	}

	/**
	 * @return
	 */
	public java.lang.String getEstadoGuia() {
		return estadoGuia;
	}

	/**
	 * @return
	 */
	public java.util.Date getFechaCambioEstado() {
		return fechaCambioEstado;
	}

	/**
	 * @return
	 */
	public java.lang.String getMailContacto() {
		return mailContacto;
	}

	/**
	 * @return
	 */
	public java.lang.String getNombreContacto() {
		return nombreContacto;
	}

	/**
	 * @return
	 */
	public java.lang.String getNotaIngreso() {
		return notaIngreso;
	}

	/**
	 * @return
	 */
	public java.lang.String getObservacionesCambioEstado() {
		return observacionesCambioEstado;
	}

	/**
	 * @param string
	 */
	public void setEstadoGuia(java.lang.String string) {
		estadoGuia = string;
	}

	/**
	 * @param string
	 */
	public void setFechaCambioEstado(java.util.Date string) {
		fechaCambioEstado = string;
	}

	/**
	 * @param string
	 */
	public void setMailContacto(java.lang.String string) {
		mailContacto = string;
	}

	/**
	 * @param string
	 */
	public void setNombreContacto(java.lang.String string) {
		nombreContacto = string;
	}

	/**
	 * @param string
	 */
	public void setNotaIngreso(java.lang.String string) {
		notaIngreso = string;
	}

	/**
	 * @param string
	 */
	public void setObservacionesCambioEstado(java.lang.String string) {
		observacionesCambioEstado = string;
	}

	/**
	 * @return
	 */
	public java.util.Date getFechaDevolucion() {
		return fechaDevolucion;
	}

	/**
	 * @param string
	 */
	public void setFechaDevolucion(java.util.Date string) {
		fechaDevolucion = string;
	}

	public String getEjercicioGuia() {
		return EjercicioGuia;
	}

	public void setEjercicioGuia(String ejercicioGuia) {
		EjercicioGuia = ejercicioGuia;
	}

	public String getClaseDocumentoGuia() {
		return ClaseDocumentoGuia;
	}

	public void setClaseDocumentoGuia(String claseDocumentoGuia) {
		ClaseDocumentoGuia = claseDocumentoGuia;
	}

	public String getClaseOperacionGuia() {
		return ClaseOperacionGuia;
	}

	public void setClaseOperacionGuia(String claseOperacionGuia) {
		ClaseOperacionGuia = claseOperacionGuia;
	}

	public String getFechaContabilizacionGuia() {
		return FechaContabilizacionGuia;
	}

	public void setFechaContabilizacionGuia(String fechaContabilizacionGuia) {
		FechaContabilizacionGuia = fechaContabilizacionGuia;
	}

	public String getSociedad() {
		return Sociedad;
	}

	public void setSociedad(String sociedad) {
		Sociedad = sociedad;
	}

	public String getCodigoERPProveedor() {
		return CodigoERPProveedor;
	}

	public void setCodigoERPProveedor(String codigoERPProveedor) {
		CodigoERPProveedor = codigoERPProveedor;
	}

	public String getRazonSocialProveedor() {
		return RazonSocialProveedor;
	}

	public void setRazonSocialProveedor(String razonSocialProveedor) {
		RazonSocialProveedor = razonSocialProveedor;
	}

	public String getTipoGuia() {
		return TipoGuia;
	}

	public void setTipoGuia(String tipoGuia) {
		TipoGuia = tipoGuia;
	}

	public String getUsuarioCreacionGuia() {
		return UsuarioCreacionGuia;
	}

	public void setUsuarioCreacionGuia(String usuarioCreacionGuia) {
		UsuarioCreacionGuia = usuarioCreacionGuia;
	}

	public String getCodigoGuiaERP() {
		return CodigoGuiaERP;
	}

	public void setCodigoGuiaERP(String codigoGuiaERP) {
		CodigoGuiaERP = codigoGuiaERP;
	}

	public void setTotalBultos(Integer totalBultos) {
		this.totalBultos = totalBultos;
	}

	public void setTotalPesoNeto(Double totalPesoNeto) {
		this.totalPesoNeto = totalPesoNeto;
	}

	public void setTotalPesoBruto(Double totalPesoBruto) {
		this.totalPesoBruto = totalPesoBruto;
	}

	public void setTara(Double tara) {
		this.tara = tara;
	}

	public void setTotalVolumen(Double totalVolumen) {
		this.totalVolumen = totalVolumen;
	}

	public void setIdGuia(int idGuia) {
		// TODO Auto-generated method stub
		this.idGuia = idGuia;
	}

	public int getIdGuia() {
		return idGuia;
	}

	public String getRUCGrupoEmpresarial() {
		return RUCGrupoEmpresarial;
	}

	public void setRUCGrupoEmpresarial(String grupoEmpresarial) {
		RUCGrupoEmpresarial = grupoEmpresarial;
	}

}